#![allow(unused_imports, dead_code)]

use utoipa::OpenApi;

pub(crate) mod app;
pub mod configure;
pub mod handler;
pub(crate) mod router;
pub mod utils;
pub mod services;

pub use app::server::run;



#[derive(OpenApi)]
#[openapi(
    paths(
        crate::handler::user::login,
        crate::handler::user::logout,
        crate::handler::user::current_user,
        crate::handler::test_handler::test_query,
    ),
    components(
        schemas(
            crate::handler::user::LoginForm,
            crate::handler::user::LoginResponse,
            crate::handler::user::CommonResponse<serde_json::Value>,
            crate::handler::common::AppResult<std::collections::HashMap<String, String>>,
        )
    ),
    tags(
        (name = "auth", description = "认证相关接口"),
        (name = "user", description = "用户相关接口"),
        (name = "test", description = "测试接口")
    ),
    info(
        title = "React Admin API",
        version = "1.0.0",
        description = "React Admin 后端 API 文档"
    )
)]
pub struct ApiDoc;